package cn.example.demo.modules.sys.model.entity;

import cn.example.demo.common.tools.obj.reflect.FieldAlias;
import cn.example.demo.common.tools.obj.reflect.Immutable;
import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 描述：【系统日志】实体类
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class SysLog implements Serializable {
    private static final long serialVersionUID = 1L;

    @Immutable
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    @FieldAlias("ID")
    private String id;

    @FieldAlias("操作人ID")
    private Integer operatorId;

    @FieldAlias("操作内容")
    private String operation;

    @FieldAlias("请求方式")
    private String requestMethod;

    @FieldAlias("资源路径")
    private String resourcePath;

    @FieldAlias("状态")
    private Integer status;

    @FieldAlias("耗时")
    private String consumeTime;

    @FieldAlias("操作时间")
    private Date operationTime;

    @FieldAlias("客户端IP")
    private String clientIp;

    @FieldAlias("详细信息")
    private String detailMsg;

    @FieldAlias("异常信息")
    private String exceptionMsg;

    @FieldAlias("操作人")
    private String operator;
}
